HYPERFLEET-811: add hyperfleet-bugs-triage plugin#20
HYPERFLEET-811: add hyperfleet-bugs-triage plugin#20rafabene wants to merge 1 commit intoopenshift-hyperfleet:mainfrom
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughAdds a new Claude plugin, hyperfleet-bugs-triage: marketplace registration, plugin manifest, OWNERS, README, a detailed bugs-triage skill, and repo references. The skill provides interactive CLI workflows to triage HyperFleet JIRA Bugs and scoped GitHub issues (commands: /bugs-triage, /bugs-triage jira, /bugs-triage github), presents validation checklists, offers actions (move to Backlog, request info, close, convert to RFE, create JIRA tickets via hyperfleet-jira:jira-ticket-creator, etc.), and emits triage metrics and session summaries. Sequence Diagram(s)sequenceDiagram
participant User as User (triager)
participant Plugin as hyperfleet-bugs-triage Skill
participant CLI as Local CLIs (jira-cli, gh)
participant JIRA as JIRA
participant GH as GitHub
participant TicketSkill as hyperfleet-jira:jira-ticket-creator
User->>Plugin: invoke /bugs-triage (jira|github|both)
Plugin->>CLI: verify jira-cli and/or gh available
alt Jira flow
Plugin->>JIRA: query New Bugs and aged Bugs
loop per issue
Plugin->>JIRA: fetch full ticket details
Plugin->>User: present checklist & actions
User->>Plugin: choose action
alt modify ticket
Plugin->>JIRA: transition/set fields/convert/close/link duplicate
else comment/escalate/assign
Plugin->>JIRA: add comment / set assignee / link
end
end
end
alt GitHub flow
Plugin->>CLI: read references/github-repos.md
Plugin->>GH: fetch untriaged and aged issues
loop per issue
Plugin->>GH: fetch issue details and PR links
Plugin->>User: present checklist & actions
User->>Plugin: choose action
alt accept as Bug/RFE
Plugin->>TicketSkill: request JIRA ticket creation
TicketSkill->>JIRA: create ticket
TicketSkill->>Plugin: return ticket info
Plugin->>GH: comment + add label (if permitted)
else reject/duplicate/request info/help
Plugin->>GH: comment / add labels / link duplicate
end
end
end
Plugin->>User: display triage metrics and session summary
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
c23f3df to
2b5385b
Compare
There was a problem hiding this comment.
Actionable comments posted: 4
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@hyperfleet-bug-triage/scripts/track-usage.sh`:
- Around line 89-96: The backgrounded GitHub dispatch in track-usage.sh (the `gh
api repos/openshift-hyperfleet/hyperfleet-claude-plugins/dispatches` call that
uses USERNAME, PLUGIN_NAME, SKILL_NAME and EVENT) still ties up the invoking
process because its stdio is inherited; detach its stdio so it truly runs
non‑blocking by redirecting stdin from /dev/null and sending stdout/stderr to
/dev/null (or using nohup) and backgrounding/disowning the process, ensuring the
command does not keep the capture pipe open and block skill loading.
In `@hyperfleet-bug-triage/skills/bug-triage/SKILL.md`:
- Around line 211-212: Update the triage rules so GitHub issues are not closed
based solely on a linked Jira ticket's status: change the rule that currently
says "If Jira ticket exists: comment on GitHub linking to it, add
`hf-triaged/accepted` label, close the issue if the Jira ticket is already
Closed/Done, skip" to instead comment and add the `hf-triaged/accepted` label
but do NOT close the issue based on Jira status; only close when there is a
linked PR that is merged or the fix is present in the repository. Similarly,
update the rule that handles "If code already fixed: comment referencing the PR,
add `hf-triaged/accepted` label, close the issue" so it only closes issues when
the referenced PR is merged (or the fix is in trunk), and otherwise leave the
issue open while tracking the PR.
- Around line 18-26: Update the consent flow in SKILL.md so an empty reply is
NOT treated as consent: require an explicit affirmative "yes" (case-insensitive)
to opt in when the dynamic context is TRACKING_CONSENT_NEEDED, and only then run
the TRACKING_RERUN command; treat any other response (including empty) as a
decline. Also correct the data description—do not call it “anonymous”;
explicitly list the fields sent (e.g., GitHub username and invocation counts as
emitted by hyperfleet-bug-triage/scripts/track-usage.sh around line 92) so the
prompt and subsequent wording accurately reflect what is collected.
- Around line 183-186: The GitHub CLI command uses a BSD-specific date
expression created:<$(date -v-42d '+%Y-%m-%d') which breaks on GNU/Linux;
replace the inline date usage in the gh api search/issues q=... string by
computing a DATE variable using a portable fallback (try GNU: date -d '42 days
ago' +%Y-%m-%d and if that fails fall back to BSD: date -v-42d +%Y-%m-%d), then
inject that DATE into the q=... created:<$DATE portion of the gh api
search/issues invocation (refer to the gh api search/issues command and the
created:<$(date ...) fragment to locate the change).
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: ea82333c-9469-4689-890d-fd22aa249a43
⛔ Files ignored due to path filters (1)
hyperfleet-bug-triage/skills/bug-triage/references/owners.csvis excluded by!**/*.csv
📒 Files selected for processing (13)
.claude-plugin/marketplace.jsonCLAUDE.mdhyperfleet-bug-triage/.claude-plugin/plugin.jsonhyperfleet-bug-triage/OWNERShyperfleet-bug-triage/README.mdhyperfleet-bug-triage/scripts/track-usage.shhyperfleet-bug-triage/skills/bug-triage/SKILL.mdhyperfleet-bug-triage/skills/bug-triage/references/github-repos.mdhyperfleet-jira/.claude-plugin/plugin.jsonhyperfleet-jira/skills/jira-ticket-creator/SKILL.mdhyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.mdhyperfleet-jira/skills/jira-ticket-creator/references/formatting.mdhyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Around line 182-187: The date command in the gh api search snippet uses
BSD-specific syntax ("date -v-42d") which breaks on GNU/Linux; edit the code
block in SKILL.md where the gh api search/issues command is defined and replace
the hardcoded BSD call with a portable fallback (e.g., try "date -d '-42 days'
'+%Y-%m-%d'" and fall back to "date -v-42d '+%Y-%m-%d'" if the first fails) or
document macOS-only requirements; update the quoted q=... expression to use that
portable substitution so the gh api search/issues command works on both Linux
and macOS.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: ed427c74-fb3f-4c4b-bf73-88416b9cf026
⛔ Files ignored due to path filters (1)
hyperfleet-bugs-triage/skills/bugs-triage/references/owners.csvis excluded by!**/*.csv
📒 Files selected for processing (13)
.claude-plugin/marketplace.jsonCLAUDE.mdhyperfleet-bugs-triage/.claude-plugin/plugin.jsonhyperfleet-bugs-triage/OWNERShyperfleet-bugs-triage/README.mdhyperfleet-bugs-triage/scripts/track-usage.shhyperfleet-bugs-triage/skills/bugs-triage/SKILL.mdhyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.mdhyperfleet-jira/.claude-plugin/plugin.jsonhyperfleet-jira/skills/jira-ticket-creator/SKILL.mdhyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.mdhyperfleet-jira/skills/jira-ticket-creator/references/formatting.mdhyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md
✅ Files skipped from review due to trivial changes (7)
- hyperfleet-bugs-triage/OWNERS
- hyperfleet-bugs-triage/.claude-plugin/plugin.json
- hyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
- hyperfleet-jira/.claude-plugin/plugin.json
- CLAUDE.md
- hyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.md
- hyperfleet-bugs-triage/README.md
🚧 Files skipped from review as they are similar to previous changes (1)
- .claude-plugin/marketplace.json
Plugin Output Sample —
|
| Metric | Count |
|---|---|
| Bugs triaged | 0 |
| Moved to Backlog | 0 |
| Closed (Won't Do/Rejected/Duplicate) | 0 |
| Info requested | 0 |
| Skipped | 0 |
| Bugs open > 3 sprints | 0 |
Part 2: GitHub Issues Triage
No untriaged GitHub issues found (all open issues already have triage labels).
Issues Open > 3 Sprints
| Issue | Title | Created | Labels |
|---|---|---|---|
| maestro-cli#2 | Naming convention needs to be aligned from resources creation to follow up k8s resources creation validations | 2026-01-19 | hf-triaged/accepted |
This issue is already tracked by HYPERFLEET-799 (New status). The plugin detected the duplicate HYPERFLEET-804 was already closed. The user was prompted interactively and chose to keep it as-is.
GitHub Triage Summary
| Metric | Count |
|---|---|
| Issues triaged | 0 |
| Accepted (Bug) | 0 |
| Accepted (RFE) | 0 |
| Help provided | 0 |
| Rejected | 0 |
| Duplicate | 0 |
| Info requested | 0 |
| Skipped | 0 |
| Issues open > 3 sprints | 1 |
Final Summary
| Area | Result |
|---|---|
| Jira bugs in New | 0 — nothing to triage |
| Jira bugs open > 3 sprints | 0 |
| GitHub untriaged issues | 0 — all issues already have triage labels |
| GitHub issues open > 3 sprints | 1 — maestro-cli#2 (kept as-is per user decision) |
The triage queue is clean. No action items pending.
Note: The plugin processes each bug/issue one at a time, presenting an assessment table and recommending an action (Move to Backlog, Close, Request Info, etc.). The user confirms each action interactively before it's executed.
There was a problem hiding this comment.
Actionable comments posted: 1
♻️ Duplicate comments (1)
hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md (1)
20-24:⚠️ Potential issue | 🟠 MajorRequire explicit opt-in and correct tracking-data description
Line 20 is inaccurate (“anonymous”), and Line 23 still treats empty input as consent. This is a privacy/compliance risk and should require explicit
yesonly.Proposed fix
-> "HyperFleet plugins collect anonymous usage data (GitHub username and skill invocation counts) to help the team understand adoption. Would you like to enable usage tracking? (Yes/no)" +> "HyperFleet plugins collect usage data (your GitHub username, plugin name, skill name, and invocation events) to help the team understand adoption. Would you like to enable usage tracking? (Yes/no)" -If the user agrees (or just presses enter / says "yes"): save the consent **and** run the tracking script in a **single** Bash command: `mkdir -p ~/.claude && echo "yes" > ~/.claude/.hyperfleet-tracking-consent && <TRACKING_RERUN command from dynamic context>` (replace `<TRACKING_RERUN command ...>` with the actual command shown in the `TRACKING_RERUN:` line). -- If the user declines: run `mkdir -p ~/.claude && echo "no" > ~/.claude/.hyperfleet-tracking-consent` +If the user explicitly says "yes" (case-insensitive): save the consent **and** run the tracking script in a **single** Bash command: `mkdir -p ~/.claude && echo "yes" > ~/.claude/.hyperfleet-tracking-consent && <TRACKING_RERUN command from dynamic context>` (replace `<TRACKING_RERUN command ...>` with the actual command shown in the `TRACKING_RERUN:` line). +- If the user says "no" or gives an empty/unclear response: run `mkdir -p ~/.claude && echo "no" > ~/.claude/.hyperfleet-tracking-consent`As per coding guidelines, "Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity."
Also applies to: 26-27
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md` around lines 20 - 24, Update the consent prompt and handling so it requires an explicit "yes" (case-insensitive) to opt in — do not treat empty input or any other response as consent — and correct the wording to list the precise data collected ("GitHub username and skill invocation counts") instead of "anonymous"; when the user explicitly agrees run a single Bash command that creates the consent file, writes "yes", and then runs the actual TRACKING_RERUN command shown in the SKILL.md `TRACKING_RERUN:` line (replace the `<TRACKING_RERUN command ...>` placeholder with that exact command) using the form: mkdir -p ~/.claude && echo "yes" > ~/.claude/.hyperfleet-tracking-consent && <actual TRACKING_RERUN command>; when the user explicitly declines run: mkdir -p ~/.claude && echo "no" > ~/.claude/.hyperfleet-tracking-consent.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Around line 142-144: The markdown tables use fenced code blocks without
language identifiers (MD040); update each triple-backtick fence that wraps the
tables (the blocks containing "| Ticket | Priority | Status | Assignee | Created
|", the metric tables, and the other table blocks around lines noted) to include
a language tag (e.g., ```markdown) so each fenced block becomes labeled (for
example change ``` to ```markdown) for all occurrences referenced (including the
blocks at ~142-144, 150-159, 259-261, 265-277).
---
Duplicate comments:
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Around line 20-24: Update the consent prompt and handling so it requires an
explicit "yes" (case-insensitive) to opt in — do not treat empty input or any
other response as consent — and correct the wording to list the precise data
collected ("GitHub username and skill invocation counts") instead of
"anonymous"; when the user explicitly agrees run a single Bash command that
creates the consent file, writes "yes", and then runs the actual TRACKING_RERUN
command shown in the SKILL.md `TRACKING_RERUN:` line (replace the
`<TRACKING_RERUN command ...>` placeholder with that exact command) using the
form: mkdir -p ~/.claude && echo "yes" > ~/.claude/.hyperfleet-tracking-consent
&& <actual TRACKING_RERUN command>; when the user explicitly declines run: mkdir
-p ~/.claude && echo "no" > ~/.claude/.hyperfleet-tracking-consent.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: b2950470-4876-4b59-a48e-e5b8a619e79c
📒 Files selected for processing (1)
hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md
41d9d47 to
348c77f
Compare
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@hyperfleet-bugs-triage/README.md`:
- Around line 13-17: Add a language identifier to the fenced code block in
README.md that contains the usage examples (the block with the lines starting
"/bugs-triage", "/bugs-triage jira", "/bugs-triage github") so markdownlint
MD040 is satisfied; change the opening fence from ``` to ```bash (or another
appropriate language) to mark the snippet as bash.
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Around line 167-173: The GitHub search currently excludes only three triaged
labels and thus returns issues with other non-triage labels; update the gh api
search command's q parameter (the q="..." string in the gh api search/issues
call in SKILL.md) to explicitly require either unlabeled issues (no:label) or
issues labeled hf-needs-triage by changing the query to include (no:label OR
label:hf-needs-triage) while still excluding hf-triaged/accepted,
hf-triaged/rejected, and hf-triaged/duplicate; modify the q string accordingly
in the gh api search/issues invocation so it matches the documented intent.
In `@hyperfleet-jira/skills/jira-ticket-creator/references/formatting.md`:
- Around line 34-37: The fenced code block in formatting.md that contains the
two lines "**POST** /api/v1/clusters/:id" and "**GET** /api/v1/clusters/{id}" is
missing a language tag (triggering markdownlint MD040); update that fence to
include a language tag (e.g., text) so the opening fence becomes ```text,
leaving the block contents unchanged and preserving the bold method examples.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: f3115c95-7baa-49f5-923a-a8bf7f5c43d4
⛔ Files ignored due to path filters (1)
hyperfleet-bugs-triage/skills/bugs-triage/references/owners.csvis excluded by!**/*.csv
📒 Files selected for processing (13)
.claude-plugin/marketplace.jsonCLAUDE.mdhyperfleet-bugs-triage/.claude-plugin/plugin.jsonhyperfleet-bugs-triage/OWNERShyperfleet-bugs-triage/README.mdhyperfleet-bugs-triage/scripts/track-usage.shhyperfleet-bugs-triage/skills/bugs-triage/SKILL.mdhyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.mdhyperfleet-jira/.claude-plugin/plugin.jsonhyperfleet-jira/skills/jira-ticket-creator/SKILL.mdhyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.mdhyperfleet-jira/skills/jira-ticket-creator/references/formatting.mdhyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md
✅ Files skipped from review due to trivial changes (6)
- hyperfleet-bugs-triage/OWNERS
- hyperfleet-bugs-triage/.claude-plugin/plugin.json
- .claude-plugin/marketplace.json
- hyperfleet-jira/.claude-plugin/plugin.json
- hyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.md
- hyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md
🚧 Files skipped from review as they are similar to previous changes (3)
- hyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
- CLAUDE.md
- hyperfleet-bugs-triage/scripts/track-usage.sh
hyperfleet-jira/skills/jira-ticket-creator/references/formatting.md
Outdated
Show resolved
Hide resolved
348c77f to
2777f48
Compare
There was a problem hiding this comment.
♻️ Duplicate comments (1)
hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md (1)
167-173:⚠️ Potential issue | 🟠 MajorAlign the GitHub search query with the documented triage scope.
Line 167 says to fetch issues that are unlabeled or
hf-needs-triage, but Line 171 currently matches any open issue not carrying three specific triaged labels. That broadens scope and can reprocess issues already in other workflow states.Suggested fix
gh api search/issues -X GET \ - -f q="is:issue is:open -label:hf-triaged/accepted -label:hf-triaged/rejected -label:hf-triaged/duplicate repo:openshift-hyperfleet/hyperfleet-api repo:openshift-hyperfleet/hyperfleet-adapter repo:openshift-hyperfleet/hyperfleet-sentinel repo:openshift-hyperfleet/hyperfleet-broker repo:openshift-hyperfleet/hyperfleet-chart repo:openshift-hyperfleet/hyperfleet-infra repo:openshift-hyperfleet/hyperfleet-credential-provider repo:openshift-hyperfleet/hyperfleet-logger repo:openshift-hyperfleet/hyperfleet-e2e repo:openshift-hyperfleet/maestro-cli repo:openshift-hyperfleet/architecture repo:openshift-hyperfleet/hyperfleet-claude-plugins" \ + -f q="is:issue is:open (no:label OR label:hf-needs-triage) -label:hf-triaged/accepted -label:hf-triaged/rejected -label:hf-triaged/duplicate repo:openshift-hyperfleet/hyperfleet-api repo:openshift-hyperfleet/hyperfleet-adapter repo:openshift-hyperfleet/hyperfleet-sentinel repo:openshift-hyperfleet/hyperfleet-broker repo:openshift-hyperfleet/hyperfleet-chart repo:openshift-hyperfleet/hyperfleet-infra repo:openshift-hyperfleet/hyperfleet-credential-provider repo:openshift-hyperfleet/hyperfleet-logger repo:openshift-hyperfleet/hyperfleet-e2e repo:openshift-hyperfleet/maestro-cli repo:openshift-hyperfleet/architecture repo:openshift-hyperfleet/hyperfleet-claude-plugins" \As per coding guidelines, "-Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md` around lines 167 - 173, The GitHub search query in the gh api command in SKILL.md currently selects any open issue that lacks the three triaged labels, but it should only select issues that are either unlabeled or explicitly labeled hf-needs-triage; update the -f q=... string used in the gh api search/issues command (the snippet containing "is:issue is:open -label:hf-triaged/accepted -label:hf-triaged/rejected -label:hf-triaged/duplicate") to instead use a parenthesized expression combining no:label OR label:hf-needs-triage (e.g., is:issue is:open (no:label OR label:hf-needs-triage) and still exclude the three hf-triaged/* labels) so the query matches only unlabeled or hf-needs-triage issues in the listed repos.
🧹 Nitpick comments (1)
hyperfleet-jira/skills/jira-ticket-creator/SKILL.md (1)
127-144: Remove conflicting guidance about manual steps.Line 127 says fields should be set during creation, but Line 143 still requires a “manual steps needed” list. This contradiction can drive inconsistent ticket workflows.
Suggested doc adjustment
Return to user: - Ticket key (e.g., HYPERFLEET-123) - Link: https://redhat.atlassian.net/browse/HYPERFLEET-123 - Summary of what was created -- **List of manual steps needed** +- **List of follow-up edits performed (only if anything could not be set at creation time)**As per coding guidelines, "-Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@hyperfleet-jira/skills/jira-ticket-creator/SKILL.md` around lines 127 - 144, The doc currently contradicts itself: the "All fields can be set via CLI during creation" section claims no post-creation work is needed, but "Step 7: Verify and Return Details" still asks for a **List of manual steps needed**; update SKILL.md to remove this conflicting bullet or explicitly document which specific fields or post-creation actions (if any) cannot be automated via CLI. Locate the "All fields can be set via CLI during creation" statement and the "Step 7: Verify and Return Details" block (including the "List of manual steps needed" line) and either delete that manual-steps line or replace it with a short conditional note listing exact manual tasks and why (referencing the CLI flags like -P, -l, -C and the jira issue view command for verification).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Duplicate comments:
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Around line 167-173: The GitHub search query in the gh api command in SKILL.md
currently selects any open issue that lacks the three triaged labels, but it
should only select issues that are either unlabeled or explicitly labeled
hf-needs-triage; update the -f q=... string used in the gh api search/issues
command (the snippet containing "is:issue is:open -label:hf-triaged/accepted
-label:hf-triaged/rejected -label:hf-triaged/duplicate") to instead use a
parenthesized expression combining no:label OR label:hf-needs-triage (e.g.,
is:issue is:open (no:label OR label:hf-needs-triage) and still exclude the three
hf-triaged/* labels) so the query matches only unlabeled or hf-needs-triage
issues in the listed repos.
---
Nitpick comments:
In `@hyperfleet-jira/skills/jira-ticket-creator/SKILL.md`:
- Around line 127-144: The doc currently contradicts itself: the "All fields can
be set via CLI during creation" section claims no post-creation work is needed,
but "Step 7: Verify and Return Details" still asks for a **List of manual steps
needed**; update SKILL.md to remove this conflicting bullet or explicitly
document which specific fields or post-creation actions (if any) cannot be
automated via CLI. Locate the "All fields can be set via CLI during creation"
statement and the "Step 7: Verify and Return Details" block (including the "List
of manual steps needed" line) and either delete that manual-steps line or
replace it with a short conditional note listing exact manual tasks and why
(referencing the CLI flags like -P, -l, -C and the jira issue view command for
verification).
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 3a723c7a-06a8-406c-8ca4-cd5059a1a2f3
⛔ Files ignored due to path filters (1)
hyperfleet-bugs-triage/skills/bugs-triage/references/owners.csvis excluded by!**/*.csv
📒 Files selected for processing (13)
.claude-plugin/marketplace.jsonCLAUDE.mdhyperfleet-bugs-triage/.claude-plugin/plugin.jsonhyperfleet-bugs-triage/OWNERShyperfleet-bugs-triage/README.mdhyperfleet-bugs-triage/scripts/track-usage.shhyperfleet-bugs-triage/skills/bugs-triage/SKILL.mdhyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.mdhyperfleet-jira/.claude-plugin/plugin.jsonhyperfleet-jira/skills/jira-ticket-creator/SKILL.mdhyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.mdhyperfleet-jira/skills/jira-ticket-creator/references/formatting.mdhyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md
✅ Files skipped from review due to trivial changes (8)
- hyperfleet-jira/.claude-plugin/plugin.json
- hyperfleet-bugs-triage/OWNERS
- hyperfleet-bugs-triage/.claude-plugin/plugin.json
- CLAUDE.md
- .claude-plugin/marketplace.json
- hyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
- hyperfleet-jira/skills/jira-ticket-creator/references/formatting.md
- hyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.md
d08946f to
af3bada
Compare
There was a problem hiding this comment.
Actionable comments posted: 2
🧹 Nitpick comments (2)
hyperfleet-jira/skills/jira-ticket-creator/SKILL.md (1)
141-144: Make manual steps conditional instead of always required.Line 143 asks for a manual-steps list unconditionally, but Line 127 says all fields can be set during creation. This can produce misleading output when no follow-up actions are needed. Make this conditional (“if any”).
Proposed edit
- Summary of what was created -- **List of manual steps needed** +- **Manual steps needed (if any)**As per coding guidelines, "Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity."
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@hyperfleet-jira/skills/jira-ticket-creator/SKILL.md` around lines 141 - 144, The "List of manual steps needed" section is currently always shown and can be misleading when there are no follow-up actions; update the SKILL.md output generation so the manual steps block (the "List of manual steps needed" / "manual-steps" section) is emitted only when there are actual manual steps to perform (e.g., render "Manual steps (if any):" or include the whole list only when the manual-steps array/field is non-empty), ensuring other fields like "Link" and "Summary of what was created" remain unchanged.hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md (1)
153-159: Avoid duplicating repo scope in command strings.The workflow says to read
references/github-repos.md, but the query hardcodes all repos inline. This creates drift risk when the scope file changes.Refactor sketch
-gh api search/issues -X GET \ - -f q="is:issue is:open ... repo:openshift-hyperfleet/hyperfleet-api ... repo:openshift-hyperfleet/hyperfleet-claude-plugins" \ +REPOS="$(awk '/^- `/{gsub(/[`-]/,""); gsub(/^[[:space:]]+|[[:space:]]+$/,""); printf "repo:openshift-hyperfleet/%s ", $0}' references/github-repos.md)" +gh api search/issues -X GET \ + -f q="is:issue is:open ... ${REPOS}" \As per coding guidelines, "Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity."
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Around line 273-274: The policy line "Use `jira` CLI for Jira and `gh` CLI for
GitHub — no other tools" conflicts with the declared allowed-tools; update the
wording in SKILL.md to permit the required toolchain by replacing that line with
a statement like: "Use `jira` CLI for Jira and `gh` CLI for GitHub; do not use
other external CLIs, but allowed-tools (AskUserQuestion, Read, Skill) may be
used as declared." Ensure the change references the existing phrase "Use `jira`
CLI for Jira and `gh` CLI for GitHub" and the allowed-tools entries
(AskUserQuestion, Read, Skill) so the doc and runtime tool list are consistent.
- Line 118: The Close command line uses a pipe-delimited resolution string which
conflicts with the file's placeholder style; update the Close example (the line
containing: jira issue move TICKET-KEY "Closed" --resolution "Won't
Do|Rejected|Duplicate") to use the same placeholder convention—either replace
the pipe syntax with an angle-bracketed alternatives placeholder like
--resolution "<Won't Do|Rejected|Duplicate>" or, better, use a single
descriptive placeholder such as --resolution "<Resolution>" and list the
acceptable values elsewhere for consistency.
---
Nitpick comments:
In `@hyperfleet-jira/skills/jira-ticket-creator/SKILL.md`:
- Around line 141-144: The "List of manual steps needed" section is currently
always shown and can be misleading when there are no follow-up actions; update
the SKILL.md output generation so the manual steps block (the "List of manual
steps needed" / "manual-steps" section) is emitted only when there are actual
manual steps to perform (e.g., render "Manual steps (if any):" or include the
whole list only when the manual-steps array/field is non-empty), ensuring other
fields like "Link" and "Summary of what was created" remain unchanged.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: a4de7e41-1828-4e27-bd3e-20d4f4952413
⛔ Files ignored due to path filters (1)
hyperfleet-bugs-triage/skills/bugs-triage/references/owners.csvis excluded by!**/*.csv
📒 Files selected for processing (12)
.claude-plugin/marketplace.jsonCLAUDE.mdhyperfleet-bugs-triage/.claude-plugin/plugin.jsonhyperfleet-bugs-triage/OWNERShyperfleet-bugs-triage/README.mdhyperfleet-bugs-triage/skills/bugs-triage/SKILL.mdhyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.mdhyperfleet-jira/.claude-plugin/plugin.jsonhyperfleet-jira/skills/jira-ticket-creator/SKILL.mdhyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.mdhyperfleet-jira/skills/jira-ticket-creator/references/formatting.mdhyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md
✅ Files skipped from review due to trivial changes (7)
- hyperfleet-bugs-triage/OWNERS
- hyperfleet-bugs-triage/.claude-plugin/plugin.json
- hyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
- .claude-plugin/marketplace.json
- hyperfleet-jira/skills/jira-ticket-creator/references/formatting.md
- hyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.md
- hyperfleet-bugs-triage/README.md
🚧 Files skipped from review as they are similar to previous changes (2)
- CLAUDE.md
- hyperfleet-jira/.claude-plugin/plugin.json
ciaranRoche
left a comment
There was a problem hiding this comment.
Left some comments inline, a couple of things outside the diff:
-
Version conflict with PR #17: This bumps hyperfleet-jira from 0.4.0 to 0.4.1, while #17 bumps it to 0.5.0. Whichever merges second will conflict.
-
hyperfleet-jira/.claude-plugin/plugin.jsondescription: Still says "with proper JIRA wiki markup" but the refactored skill now uses Markdown. Should update to match. -
Markdown vs wiki markup switch: This is the big one. The old skill was very emphatic about NOT using Markdown, and now the new version says the opposite. Have you verified curly braces, fenced code blocks, and nested lists all render correctly? The old skill specifically called out HYPERFLEET-255 and HYPERFLEET-258 as tickets where this broke rendering. If those were just user error at the time, that's fine, but worth confirming since everyone on the team has been trained to avoid Markdown in JIRA descriptions.
The bugs-triage plugin looks solid, good call delegating ticket creation to jira-ticket-creator instead of duplicating content. The refactor from 738 to ~195 lines is a nice cleanup.
hyperfleet-jira/skills/jira-ticket-creator/references/formatting.md
Outdated
Show resolved
Hide resolved
af3bada to
2efa3f1
Compare
|
@ciaranRoche Thanks for the review! Version conflict with PR #17: I put PR #17 on hold because I need to guarantee that calling the github actions dispatcher needs the proper permission. So I gave priority to this one as bugs triage seems to be more needed. Once this PR is merged I can return to plugin tracking (including this) plugin.json description: Good catch — fixed. Removed the "with proper JIRA wiki markup" reference. Markdown vs wiki markup: Yes, I verified this. The jira-cli sends descriptions to JIRA Cloud's |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md (1)
153-157: Align the query description with actual filter behavior.Line 153 says the query returns issues that are unlabeled or
hf-needs-triage, but Line 157 actually returns any open issue missinghf-triaged/*labels. This mismatch will confuse future maintenance and triage expectations.Proposed wording fix
-First, read `references/github-repos.md` to get the list of repos in scope. Then query only those repos. The query fetches issues that are either unlabeled or have `hf-needs-triage` but NOT already triaged labels: +First, read `references/github-repos.md` to get the list of repos in scope. Then query only those repos. The query fetches open issues that are not yet marked with final triage labels (`hf-triaged/accepted`, `hf-triaged/rejected`, `hf-triaged/duplicate`):🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md` around lines 153 - 157, The description text says the query returns issues that are unlabeled or labeled hf-needs-triage, but the actual gh api search/issues command filters for any open issue missing hf-triaged/* labels; update the prose in SKILL.md to match the command by explicitly stating that the query returns open issues across the repos listed in references/github-repos.md that do not have any hf-triaged/* labels (not just unlabeled or hf-needs-triage), and mention the specific labels (hf-needs-triage and hf-triaged/accepted, hf-triaged/rejected, hf-triaged/duplicate) so readers understand the exact filter used by the gh api search/issues command.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@hyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md`:
- Around line 28-30: The fenced code block containing the literal "Error:
customfield_12311141: Epic Name is required." is unlabeled and triggers MD040;
add a language tag (e.g., change the opening fence from ``` to ```text) so the
block reads as a text code fence, keeping the block content unchanged to satisfy
markdown linting.
---
Nitpick comments:
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Around line 153-157: The description text says the query returns issues that
are unlabeled or labeled hf-needs-triage, but the actual gh api search/issues
command filters for any open issue missing hf-triaged/* labels; update the prose
in SKILL.md to match the command by explicitly stating that the query returns
open issues across the repos listed in references/github-repos.md that do not
have any hf-triaged/* labels (not just unlabeled or hf-needs-triage), and
mention the specific labels (hf-needs-triage and hf-triaged/accepted,
hf-triaged/rejected, hf-triaged/duplicate) so readers understand the exact
filter used by the gh api search/issues command.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: cbe1bb96-48da-4131-969f-94c7f9ca1fab
⛔ Files ignored due to path filters (1)
hyperfleet-bugs-triage/skills/bugs-triage/references/owners.csvis excluded by!**/*.csv
📒 Files selected for processing (12)
.claude-plugin/marketplace.jsonCLAUDE.mdhyperfleet-bugs-triage/.claude-plugin/plugin.jsonhyperfleet-bugs-triage/OWNERShyperfleet-bugs-triage/README.mdhyperfleet-bugs-triage/skills/bugs-triage/SKILL.mdhyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.mdhyperfleet-jira/.claude-plugin/plugin.jsonhyperfleet-jira/skills/jira-ticket-creator/SKILL.mdhyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.mdhyperfleet-jira/skills/jira-ticket-creator/references/formatting.mdhyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md
✅ Files skipped from review due to trivial changes (6)
- hyperfleet-bugs-triage/OWNERS
- .claude-plugin/marketplace.json
- CLAUDE.md
- hyperfleet-bugs-triage/.claude-plugin/plugin.json
- hyperfleet-jira/skills/jira-ticket-creator/references/formatting.md
- hyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.md
🚧 Files skipped from review as they are similar to previous changes (3)
- hyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
- hyperfleet-jira/.claude-plugin/plugin.json
- hyperfleet-bugs-triage/README.md
hyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md
Outdated
Show resolved
Hide resolved
2efa3f1 to
7023261
Compare
7023261 to
ffe9654
Compare
There was a problem hiding this comment.
♻️ Duplicate comments (1)
hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md (1)
153-173:⚠️ Potential issue | 🟠 MajorHardcoded repo list creates maintenance drift risk.
Line 153 instructs reading
references/github-repos.mddynamically, but lines 157 and 171 hardcode all 12 repositories in thegh api search/issuesqueries. If a repository is added to github-repos.md, it won't be picked up by the triage queries, causing scope drift.♻️ Proposed solutions
Solution 1 (Recommended): Construct query dynamically from github-repos.md
At line 153, before the first query, add a command block to extract and format the repo list:
First, read `references/github-repos.md` to get the list of repos in scope. Then query only those repos. The query fetches issues that are either unlabeled or have `hf-needs-triage` but NOT already triaged labels: +```bash +# Extract repo names and build query fragment +REPOS=$(grep -E '^- `' references/github-repos.md | sed 's/^- `//;s/`$//' | sed 's/^/repo:openshift-hyperfleet\//' | tr '\n' ' ') +``` + ```bash gh api search/issues -X GET \ - -f q="is:issue is:open -label:hf-triaged/accepted -label:hf-triaged/rejected -label:hf-triaged/duplicate repo:openshift-hyperfleet/hyperfleet-api repo:openshift-hyperfleet/hyperfleet-adapter repo:openshift-hyperfleet/hyperfleet-sentinel repo:openshift-hyperfleet/hyperfleet-broker repo:openshift-hyperfleet/hyperfleet-chart repo:openshift-hyperfleet/hyperfleet-infra repo:openshift-hyperfleet/hyperfleet-credential-provider repo:openshift-hyperfleet/hyperfleet-logger repo:openshift-hyperfleet/hyperfleet-e2e repo:openshift-hyperfleet/maestro-cli repo:openshift-hyperfleet/architecture repo:openshift-hyperfleet/hyperfleet-claude-plugins" \ + -f q="is:issue is:open -label:hf-triaged/accepted -label:hf-triaged/rejected -label:hf-triaged/duplicate $REPOS" \Apply the same pattern to the query at lines 170-173.
Solution 2: Remove the reference file and maintain the list in SKILL.md
If dynamic construction is too complex, remove
references/github-repos.mdand document the canonical list only in SKILL.md to avoid the two-source-of-truth problem.As per coding guidelines, this maintenance issue impacts readability and long-term correctness.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md` around lines 153 - 173, Replace the hardcoded repo lists used in the two gh api search/issues commands with a dynamically built REPOS variable: add a small command block that parses references/github-repos.md to extract repository slugs and prefixes them with "repo:openshift-hyperfleet/" (store result in REPOS), then update both gh api search/issues invocations (the commands that start with gh api search/issues -X GET and include the long repo:openshift-hyperfleet/... list) to use "$REPOS" in the -f q="... $REPOS" fragment instead of the inline list; ensure the parsing handles the markdown list format used in references/github-repos.md and that $REPOS is properly quoted in the query string.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Duplicate comments:
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Around line 153-173: Replace the hardcoded repo lists used in the two gh api
search/issues commands with a dynamically built REPOS variable: add a small
command block that parses references/github-repos.md to extract repository slugs
and prefixes them with "repo:openshift-hyperfleet/" (store result in REPOS),
then update both gh api search/issues invocations (the commands that start with
gh api search/issues -X GET and include the long repo:openshift-hyperfleet/...
list) to use "$REPOS" in the -f q="... $REPOS" fragment instead of the inline
list; ensure the parsing handles the markdown list format used in
references/github-repos.md and that $REPOS is properly quoted in the query
string.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: c44a49a1-e4c7-47c7-8e03-49caa576728a
⛔ Files ignored due to path filters (1)
hyperfleet-bugs-triage/skills/bugs-triage/references/owners.csvis excluded by!**/*.csv
📒 Files selected for processing (12)
.claude-plugin/marketplace.jsonCLAUDE.mdhyperfleet-bugs-triage/.claude-plugin/plugin.jsonhyperfleet-bugs-triage/OWNERShyperfleet-bugs-triage/README.mdhyperfleet-bugs-triage/skills/bugs-triage/SKILL.mdhyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.mdhyperfleet-jira/.claude-plugin/plugin.jsonhyperfleet-jira/skills/jira-ticket-creator/SKILL.mdhyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.mdhyperfleet-jira/skills/jira-ticket-creator/references/formatting.mdhyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md
✅ Files skipped from review due to trivial changes (10)
- hyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
- hyperfleet-bugs-triage/.claude-plugin/plugin.json
- CLAUDE.md
- .claude-plugin/marketplace.json
- hyperfleet-jira/skills/jira-ticket-creator/references/formatting.md
- hyperfleet-jira/.claude-plugin/plugin.json
- hyperfleet-jira/skills/jira-ticket-creator/references/pitfalls.md
- hyperfleet-bugs-triage/OWNERS
- hyperfleet-jira/skills/jira-ticket-creator/references/cli-examples.md
- hyperfleet-bugs-triage/README.md
|
Part of this PR has been moved to another ticket |
ab1ba61 to
19162b9
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Line 88: The component list in SKILL.md's header ("Component identified |
PASS/FAIL/MISSING | Must be: API, Adapter, Sentinel, Broker, Architecture")
doesn't match the canonical names in references/owners.csv, causing exact-match
owner lookups to fail; update that header to use the exact component names found
in owners.csv (e.g., "Hyperfleet API", "Adapter", "Sentinel", "Broker", "CICD")
and ensure any mention of "Hyperfleet Architecture" is clarified or mapped to
the correct component name in owners.csv so the assignee suggestion logic can
match strings exactly.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: bde5460b-2007-433d-b7c0-3f72aac95e16
⛔ Files ignored due to path filters (1)
hyperfleet-bugs-triage/skills/bugs-triage/references/owners.csvis excluded by!**/*.csv
📒 Files selected for processing (7)
.claude-plugin/marketplace.jsonCLAUDE.mdhyperfleet-bugs-triage/.claude-plugin/plugin.jsonhyperfleet-bugs-triage/OWNERShyperfleet-bugs-triage/README.mdhyperfleet-bugs-triage/skills/bugs-triage/SKILL.mdhyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
✅ Files skipped from review due to trivial changes (6)
- hyperfleet-bugs-triage/OWNERS
- hyperfleet-bugs-triage/.claude-plugin/plugin.json
- .claude-plugin/marketplace.json
- hyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
- hyperfleet-bugs-triage/README.md
- CLAUDE.md
19162b9 to
18200cd
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Around line 153-173: Extract backtick-wrapped repo names from
references/github-repos.md, transform each name into the token prefixed with
"repo:openshift-hyperfleet/" and join them into a single space-separated
variable (REPO_FILTERS); then substitute that variable into the gh api search
queries used in the "untriaged" and "open > 3 sprints" steps so the -f q="..."
parameter contains $REPO_FILTERS instead of literal REPO1/REPO2 placeholders.
Use a robust markdown-safe extraction (capture text between backticks), ensure
empty lines produce an empty filter and short-circuit to reporting "No untriaged
GitHub issues" when the result set is empty, and apply this same REPO_FILTERS
substitution for both query blocks referenced in the SKILL.md examples.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 672539e5-1307-431e-9793-cc6f8635ef20
⛔ Files ignored due to path filters (1)
hyperfleet-bugs-triage/skills/bugs-triage/references/owners.csvis excluded by!**/*.csv
📒 Files selected for processing (7)
.claude-plugin/marketplace.jsonCLAUDE.mdhyperfleet-bugs-triage/.claude-plugin/plugin.jsonhyperfleet-bugs-triage/OWNERShyperfleet-bugs-triage/README.mdhyperfleet-bugs-triage/skills/bugs-triage/SKILL.mdhyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
✅ Files skipped from review due to trivial changes (6)
- hyperfleet-bugs-triage/OWNERS
- hyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
- hyperfleet-bugs-triage/.claude-plugin/plugin.json
- CLAUDE.md
- .claude-plugin/marketplace.json
- hyperfleet-bugs-triage/README.md
18200cd to
65ac78e
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@hyperfleet-bugs-triage/skills/bugs-triage/SKILL.md`:
- Around line 55-56: Several commands (notably the jira query string "jira issue
list -q\"project = HYPERFLEET AND status = New AND issuetype = Bug\" --plain
--columns \"KEY,SUMMARY,PRIORITY,STATUS,COMPONENT,ASSIGNEE,CREATED\"" and other
GitHub/Jira queries) currently append the stderr suppression token
"2>/dev/null", which hides auth/API/query errors and can falsely indicate "no
issues." Remove the "2>/dev/null" redirection (or capture stderr instead) and
explicitly check the command's exit status ($? or equivalent); if non-zero, log
or surface the error and fail/branch appropriately before treating the output as
"none found." Ensure all other occurrences of "2>/dev/null" applied to primary
fetch commands are handled the same way.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 722e3a46-fb0b-4f1a-9b46-f8d63bd15bf8
⛔ Files ignored due to path filters (1)
hyperfleet-bugs-triage/skills/bugs-triage/references/owners.csvis excluded by!**/*.csv
📒 Files selected for processing (7)
.claude-plugin/marketplace.jsonCLAUDE.mdhyperfleet-bugs-triage/.claude-plugin/plugin.jsonhyperfleet-bugs-triage/OWNERShyperfleet-bugs-triage/README.mdhyperfleet-bugs-triage/skills/bugs-triage/SKILL.mdhyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
✅ Files skipped from review due to trivial changes (4)
- hyperfleet-bugs-triage/OWNERS
- hyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md
- CLAUDE.md
- hyperfleet-bugs-triage/.claude-plugin/plugin.json
🚧 Files skipped from review as they are similar to previous changes (1)
- .claude-plugin/marketplace.json
e3c065b to
f87c875
Compare
f87c875 to
7274855
Compare
Summary
hyperfleet-bugs-triageplugin for interactive JIRA bug triage (New->Backlog) and GitHub issue triage across openshift-hyperfleet reposFiles
hyperfleet-bugs-triage/— new plugin with skill, references (owners.csv, github-repos.md), README, OWNERS.claude-plugin/marketplace.json— adds plugin entryCLAUDE.md— adds plugin to tableSummary by CodeRabbit
New Features
Documentation
Chores